package org.colafries.admin.entity.vo.index;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.colafries.admin.entity.vo.ColafriesBaseVO;
import org.colafries.common.enums.ColumnDataTypeEnum;

/**
 * @author Ann
 * @version v1.0
 * @ClassName AtomicMetricReqVO
 * @Description
 * @date Created in 2024/6/5
 **/
@EqualsAndHashCode(callSuper = true)
@Data
public class AtomicMetricReqVO extends ColafriesBaseVO {

    /**
     * 指标code
     */
    @ApiModelProperty(value = "指标code", dataType = "string", example = "xx")
    private Long code;

    /**
     * 数据领域code
     */
    @ApiModelProperty(value = "数据领域code", dataType = "string", example = "xx")
    private Long dataDomainCode;

    /**
     * 来源逻辑表code
     */
    @ApiModelProperty(value = "逻辑事实表code", dataType = "string", example = "xx")
    private Long logicTableCode;

    /**
     * 指标英文名
     */
    @ApiModelProperty(value = "指标英文名", dataType = "string", example = "xx")
    private String field;

    /**
     * 指标名称
     */
    @ApiModelProperty(value = "指标名称", dataType = "string", example = "xx")
    private String alias;

    /**
     * 指标描述
     */
    @ApiModelProperty(value = "指标描述", dataType = "string", example = "xx")
    private String description;

    /**
     * 数据类型
     */
    @ApiModelProperty(value = "数据类型", dataType = "string", example = "xx")
    private ColumnDataTypeEnum dataType;

    /**
     * 计算逻辑
     */
    @ApiModelProperty(value = "计算逻辑", dataType = "string", example = "xx")
    private String expression;

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人", dataType = "string", example = "xx")
    private String createUser;

    /**
     * 修改人
     */
    @ApiModelProperty(value = "修改人", dataType = "string", example = "xx")
    private String updateUser;
}
